package com.pm.service.ledger;

import com.github.pagehelper.PageInfo;
import com.pm.entity.po.ledger.DataAnalysisPo;
import com.pm.entity.po.ledger.DataAnalysisTaskPo;
import com.pm.entity.po.ledger.Ledger;
import com.pm.entity.po.security.User;
import com.pm.entity.vo.ledger.DataAnalysisVo;
import com.pm.entity.vo.ledger.LedgerVo;

import javax.validation.constraints.NotNull;
import java.util.List;

public interface LedgerService {
    PageInfo<Ledger> getAllLedger(Ledger ledger);

    Boolean deleteLedger(Integer id);

    Integer addLedger(Ledger ledger, User user);

    Boolean updateLedger(Ledger ledger, User user);

    Ledger getLedgerId(Integer id);

    /**
     * 查询日常工作台账
     * @param dataAnalysisVo
     * @return
     */
    DataAnalysisPo DataAnalysis(DataAnalysisVo dataAnalysisVo);

    List<DataAnalysisTaskPo> DataAnalysisTask(@NotNull Integer id);

    /**
     * 重点工作台账统计
     * @param ledgerVo
     * @return
     */
    List<DataAnalysisTaskPo> getDataAnalysisTask(LedgerVo ledgerVo);
}
